package com.view.proceso6.contrato;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

import com.action.proceso5.ProveedorAction;
import com.action.proceso6.ContratoAction;
import com.action.proceso6.TipoContratoAction;
import com.bean.proceso6.Contrato;

public class ListarTablaContratoBusqueda implements Runnable {

	private JTable tabla;

	private ProveedorAction pa;
	private TipoContratoAction tca;
	private String criterio;

	public JTable getTabla() {
		return tabla;
	}

	public void setTabla(JTable tabla) {
		this.tabla = tabla;
	}

	public ListarTablaContratoBusqueda(JTable tabla, String criterio) {
		pa = new ProveedorAction();
		tca = new TipoContratoAction();
		this.tabla = tabla;
		this.criterio = criterio;
	}

	@Override
	public void run() {

		ArrayList<Contrato> lista = new ContratoAction().listar(criterio);

		DefaultTableModel m = (DefaultTableModel) tabla.getModel();
		m.setRowCount(0);
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		SimpleDateFormat sdf2 = new SimpleDateFormat("dd/MM/yyyy");
		Date fecha;
		try {
			for (Contrato contrato : lista) {
				fecha = sdf.parse(contrato.getFecha());
				String proveedor = pa.buscarRUC(contrato.getIdproveedor())
						.getRazonSocial();
				String tipo = tca.buscar(contrato.getIdtipocontrato())
						.getDescripcion();
				Object fila[] = {contrato.getCodigo(), sdf2.format(fecha),
						proveedor, contrato.getTema(), tipo};
				m.addRow(fila);

			}
		} catch (ParseException e) {
			e.printStackTrace();
		}

	}

}
